
<div class="detail-info">
    <div class="title">Đăng ký thành viên</div>
    <div class="box-changpass box-dk">
        <form id="register" method="POST" name="register">
            <label>Tên đăng nhập *</label>
            <input class="text-dk"type="text" id="reg_username" name="username"/>
            <label>Mật khẩu *</label>
            <input class="pas2" type="password" id="reg_password" name="password"/>
            <label>Gõ lại mật khẩu *</label>
            <input class="pas2" type="password" id="reg_repassword" name="repassword"/>
            <label>Email *</label>
            <input type="text" id="reg_email" name="email"/>
            <label>Số điện thoại di động:</label>
            <input class="text pas2" type="text" id="reg_phone" name="phone"/>
            <div class="clear"></div>
            <input  type="checkbox" id="reg_policy" name="reg_policy" value="1"/> <b style="font-size: 12px;">Tôi chấp nhận điều khoản website</b><br />
            <input style="margin-top: 20px;margin-left: 109px; width: 120px; height: 30px;"type="submit" name="" value="Hoàn tất đăng ký"/>
            <input type="reset" style="width: 50px;height: 30px;" value="Huỷ"/>
        </form>
    </div>
</div>
</div>
<script type="text/javascript">
jQuery.validator.addMethod("username", function(value, element) {
    return this.optional(element) || /^[A-Za-z0-9_]+$/.test(value);
}, "Wrong");

jQuery.validator.addMethod("phone", function(value, element) {
    return this.optional(element) || /^[0-9-+]+$/.test(value);
}, "Wrong");

jQuery(function(){
    jQuery("form[name='register']").submit(function(){
        if (jQuery(this).valid()){

            jQuery.ajax({
                url : "<?php echo base_url().'user/registernew';?>",
                type : "POST",
                data : {
                    username    : jQuery("#reg_username").val(),
                    password    : jQuery("#reg_password").val(),
                    email       : jQuery("#reg_email").val(),
                    phone       : jQuery("#reg_phone").val(),
                    reg_policy  : jQuery('#reg_policy:checked').val()
                },

                beforeSend : function(xhr){
                    jQuery("#img-reg-waiting").show();
                    jQuery('#bt_dk').hide();
                },
                timeout : 10000,
                success : function(response, status){
                    jQuery("#img-reg-waiting").hide();
                    switch(response){
                        case "REGISTERED":
                            tb_remove();
                            alert("Bạn đã đăng ký thành công, vui lòng kiểm tra email "+jQuery("#reg_email").val()+" để kích hoạt tài khoản (hãy kiểm tra hòm thư Spam Mailbox, Bulk Mailbox nếu không thấy trong Inbox)");
                            window.location = "<?php echo $this->session->userdata('url_register');?>";
                            break;
                        case "PROCESSING":
                            alert("Email hoặc mật khẩu đã tồn tại");
                            location.reload();
                            break;
                        case "UNSUCSESS":
                        default:
                            alert("Tạm thời chưa đăng ký được, vui lòng quay lại trong ít phút!");
                            break;
                    }
                }
            });
        }

        return false;

    });


    var validator = jQuery("form[name='register']").validate({
        rules : {
            username : {
                required : true,
                username : true,
                minlength : 6,
                maxlength : 24,
                remote: {
                    url: "<?php echo base_url().'user/checkUserName'?>",
                    type: "post",
                    data: {
                        username: function() {
                            return jQuery("#reg_username").val();
                        }
                    }
                }
            },

            phone : {
                phone : true
            },

            password : {
                required : true,
                minlength : 6,
                maxlength : 20
            },

            repassword : {
                required : true,
                equalTo : jQuery("#reg_password")
            },

            email : {
                required : true,
                email : true,
                remote: {
                    url: "<?php echo base_url().'user/checkEmail'?>",
                    type: "post",
                    data: {
                        email: function() {
                            return jQuery("#reg_email").val()
                        }
                    }
                }
            },


            reg_policy  : {
                required : true
            }

        },

        messages: {
            username: {
                required: "Bạn chưa điền Tên đăng nhập<br/>",
                username: "Tên đăng nhập chỉ bao gồm: chữ cái không dấu, số, dấu \"_\"<br/>",
                minlength : jQuery.format("Tên đăng nhập phải có ít nhất {0} ký tự"),
                maxlength : jQuery.format("Tên đăng nhập không quá {0} ký tự"),
                remote: jQuery.format("Tên đăng nhập này đã được đăng ký!")
            },
            phone :{
                phone: 'phone không hợp lệ'
            },
            password: {
                required: "Bạn chưa điền Mật khẩu<br/>",
                minlength: jQuery.format("Mật khẩu phải có ít nhất {0} ký tự"),
                maxlength: jQuery.format("Mật khẩu không được quá {0} ký tự")
            },

            repassword: {
                required: "Bạn chưa nhập lại mật khẩu",
                equalTo: "Mật khẩu nhập lại không khớp"
            },
            email: {
                required: "Bạn chưa điền địa chỉ email",
                email: "Địa chỉ email không đúng",
                remote:	jQuery.format("Email này đã có người dùng!")
            },

            reg_policy  : {
                required: "Bạn chưa đồng ý điều khoản"
            }
        },

        errorElement: 'div',
        errorClass: 'aut_error',
        errorPlacement: function(error, element) {
            error.insertAfter(element)
                    .addClass('form_error')
                    ;

        },
        success: function(errorElement){
            errorElement.remove();
            jQuery("#thickbox_head").show();
        }

    });

})

</script>
</body>
</html>